❓ Какие проблемы могут возникнуть при использовании synchronized, и как их решать?
1️⃣ Блокировки (Blocking)
— Потоки, ожидающие освобождения блокировки, простаивают, что снижает производительность. — Решение: использовать ReentrantLock, который позволяет гибко управлять блокировками, включая таймауты и прерывания.
2️⃣ Взаимная блокировка (Deadlock)
— Возникает, когда два потока блокируют друг друга, ожидая освобождения ресурсов. — Решение: явный порядок блокировки, использование tryLock() с таймаутом
3️⃣ Отсутствие гибкости
— Synchronized не дает возможности проверки состояния блокировки. — Решение: Использовать Lock, который позволяет проверить, занята ли блокировка (isLocked()) и настроить приоритет выполнения. 4️⃣ Проблема ложного пробуждения (Spurious Wakeup)
— Поток может быть пробужден без явного вызова notify(). — Решение: всегда использовать while, а не if при ожидании wait().
❓ Какие проблемы могут возникнуть при использовании synchronized, и как их решать?
1️⃣ Блокировки (Blocking)
— Потоки, ожидающие освобождения блокировки, простаивают, что снижает производительность. — Решение: использовать ReentrantLock, который позволяет гибко управлять блокировками, включая таймауты и прерывания.
2️⃣ Взаимная блокировка (Deadlock)
— Возникает, когда два потока блокируют друг друга, ожидая освобождения ресурсов. — Решение: явный порядок блокировки, использование tryLock() с таймаутом
3️⃣ Отсутствие гибкости
— Synchronized не дает возможности проверки состояния блокировки. — Решение: Использовать Lock, который позволяет проверить, занята ли блокировка (isLocked()) и настроить приоритет выполнения. 4️⃣ Проблема ложного пробуждения (Spurious Wakeup)
— Поток может быть пробужден без явного вызова notify(). — Решение: всегда использовать while, а не if при ожидании wait().
BY Библиотека собеса по Java | вопросы с собеседований
Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283
The Singapore stock market has alternated between positive and negative finishes through the last five trading days since the end of the two-day winning streak in which it had added more than a dozen points or 0.4 percent. The Straits Times Index now sits just above the 3,060-point plateau and it's likely to see a narrow trading range on Monday.
Telegram is riding high, adding tens of million of users this year. Now the bill is coming due.Telegram is one of the few significant social-media challengers to Facebook Inc., FB -1.90% on a trajectory toward one billion users active each month by the end of 2022, up from roughly 550 million today.
Библиотека собеса по Java | вопросы с собеседований from hk